這次的文章可以說是JavaScript中,陣列相關操作函式大全了,總共有20個函式,就請準備筆記本好好記錄下吧!
其實字串也可以用這個方法,但連結字串建議用" + ",效能較好
範例:
let array1 = [1, 2, 3];
let array2 = [4, 5];
console.log(array1.concat(array2));
// output: [1, 2, 3, 4, 5];
在陣列末端增加多個元素
範例:
let array1 = [1, 2, 3];
array1.push(4, 5);
console.log(array1);
// output: [1, 2, 3, 4, 5];
和push()不同,是從頭新增元素
範例:
let array1 = [1, 2, 3];
array1.unshift(4, 5);
console.log(array1);
// output: [4, 5, 1, 2, 3];
範例:
let array1 = [1, 2, 3];
array1.pop();
console.log(array1);
// output: [1, 2]
範例:
let array1 = [1, 2, 3];
array1.shift();
console.log(array1);
// output: [2, 3]
第一個參數是要改動陣列元素的元素索引,第二個參數是刪除元素數目,第三個參數之後便是要新增的元素
範例:
let array1 = ['1', '2', '3'];
array1.splice(1, 2, '4', '5');
console.log(array1);
// output: ['1', '4', '5']
若唯一參數為空白,則會為元素之間加上','
範例:
let array1 = ['1', '2', '3'];
console.log(array1.join());
// output: 1,2,3
console.log(array1.join(''));
// output: 123
console.log(array1.join('-'));
// output: 1-2-3
第一個參數是目前被處理中的元素,第二個參數是被處理中的元素之索引,第三個參數是指.forEach()方法前的那個陣列
let array1 = [1, 2, 3];
array1.forEach(function(element) {
console.log(element);
});
// output: 1
// output: 2
// output: 3
和forEach()非常地像,不過map可以將全部元素遍歷後產生一個新陣列
範例:
let array1 = [1, 2, 3];
let array2 = array1.map(x => x * 2);
console.log(array2);
// output: [2, 4, 6]
第一個參數是目前陣列元素累加的總數,第二個參數是目前被處理的元素
範例:
let array1 = [1, 2, 3];
let total = array1.reduce((accumulator, currentValue) => accumulator + currentValue);
console.log(total);
// output: 6
範例:
let array1 = [3, 1, 2, 5, 4];
array1.sort();
console.log(array1);
// output: [1, 2, 3, 4, 5]
範例:
let array1 = [1, 2, 3];
console.log(array1.reverse());
// output: [3, 2, 1]
第一個參數是目前被處理中的元素,第二個參數是被處理中的元素之索引,第三個參數是指.filter()方法前的那個陣列,也就是呼叫filter的陣列
範例:
let array1 = [1, 2, 3, 4];
let result = array1.filter(element => element > 2);
console.log(result);
// output: [3, 4]
範例:
let array1 = [2, 1, 5, 3, 4];
let found = array1.find((element) => element > 4);
console.log(found);
// expected output: 5
範例:
let array1 = [1, 2, 3, 4, 5];
console.log(array1.every(num => num < 6));
// output: true
範例:
let array1 = [1, 2, 3, 4, 5];
console.log(array1.some(num => num < 2));
// output: true
範例:
let array1 = [1, 2, 3, 4, 5];
console.log(array1.includes(6));
// output: false
第一個參數是要找的值,第二個參數是要從哪個陣列位置開始找起
範例:
let array1 = ['harry', 'jerry', 'tom', 'john', 'kitty'];
console.log(array1.indexOf('john', 2));
// output: 3
第一個參數是要第一個取出的元素位置,第二個參數是至哪一個索引之前停止提取
範例:
let array1 = ['harry', 'jerry', 'tom', 'john', 'kitty'];
array1 = array1.slice(1, 3); // 取到索引2的值,第二個參數為3
console.log(array1);
// output: ['jerry', 'tom']
用於陣列,字串
範例:
let array1 = [1, 2, 3];
for (let value of array1) {
value += 1;
console.log(value);
}
// 2
// 3
// 4
好了,終於把陣列的20個函式寫在這篇文章了,希望對看文章的你有幫助。明天,將來介紹二維陣列並利用二維陣列計算踩地雷中某個數周圍地雷的數量。
let array1 = [2, 1, 5, 3, 4];
let found = array1.find((element) => element > 4);
console.log(found);
// expected output: 12
output 是不是有誤,應該為5呢~
我那邊的確寫錯了~感謝妳的通知